package domein;

import java.util.Date;

/**
* @author Jelle Maes
*/
public class Klant {
	private String naam;
	private String voornaam;
	private int id;
	private String straat;
	private String huisnummer;
	private int postcode;
	private String gemeente;
	private Date geboortedatum;
	private String telefoonnummer;
	private String emailadres;
	
	public Klant(int id) {
		super();
		this.setId(id);
	}
	
	public Klant(int id, String naam, String voornaam) {
		this(id);
		this.setNaam(naam);
		this.setVoornaam(voornaam);
	}
	
	public Klant(int id, String naam, String voornaam, Date geboortedatum, String straat, String huisnummer, String gemeente, int postcode) {
		this(id, naam, voornaam);
		this.setGeboortedatum(geboortedatum);
		this.setStraat(straat);
		this.setHuisnummer(huisnummer);
		this.setGemeente(gemeente);
		this.setPostcode(postcode);
	}
	
	public Klant(int id, String naam, String voornaam, Date geboortedatum, String straat, String huisnummer, String gemeente, int postcode, String telefoonnummer, String emailadres) {
		this(id, naam, voornaam, geboortedatum, straat, huisnummer, gemeente, postcode);
		this.setTelefoonnummer(telefoonnummer);
		this.setEmailadres(emailadres);
	}

	public int getId() {
		return id;
	}
	
	public String getNaam() {
		return naam;
	}

	public String getVoornaam() {
		return voornaam;
	}

	public Date getGeboortedatum() {
		return geboortedatum;
	}
	
	public String getStraat() {
		return straat;
	}

	public String getHuisnummer() {
		return huisnummer;
	}

	public String getGemeente() {
		return gemeente;
	}
	
	public String getAdres() {
		return String.format("%s %s - %d %s", this.getStraat(), this.getHuisnummer(), this.getPostcode(), this.getGemeente());
	}
	
	public int getPostcode() {
		return postcode;
	}
	
	public String getTelefoonnummer() {
		return telefoonnummer;
	}

	public String getEmailadres() {
		return emailadres;
	}
	
	public String getVolledigeNaam(){
		return this.getNaam() + " " + this.getVoornaam();
	}

	public void setId(int id) {
		this.id = id;
	}
	
	public void setNaam(String naam) {
		this.naam = naam;
	}

	public void setVoornaam(String voornaam) {
		this.voornaam = voornaam;
	}

	public void setStraat(String straat) {
		this.straat = straat;
	}

	public void setGeboortedatum(Date geboortedatum) {
		this.geboortedatum = geboortedatum;
	}
	
	public void setHuisnummer(String huisnummer) {
			this.huisnummer = huisnummer;	
	}

	public void setGemeente(String gemeente) {
		this.gemeente = gemeente;
	}
	
	public void setPostcode(int postocde) {
		this.postcode = postcode >= 1000 && postcode <= 9999 ? postocde : 0 ;
	}

	public void setTelefoonnummer(String telefoonnummer) {
		this.telefoonnummer = telefoonnummer;
	}

	public void setEmailadres(String emailadres) {
		this.emailadres = emailadres;
	}

}
